#pragma once
#include "sdl_net_thread.h"
#include "mutex.h"

struct SDL_mutex;

namespace Commands
{
    namespace Core
    {
        /** \brief */
        class SDL_ThreadingPolicy : public Mutex
        {
            public:
                /** \brief */
                SDL_ThreadingPolicy();

                /** \brief */
                virtual ~SDL_ThreadingPolicy();

                /** \brief */
                virtual void Acquire(void) const;

                /** \brief */
                virtual void Release(void) const;

            private:
                SDL_mutex* mutex;
        };
    }
}
